package com.cw.base.common.model.enums;

import java.util.Arrays;

import com.cw.lang.common.enums.IEnum;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 通讯结果枚举
 *
 * Created on 2018年02月02日
 *
 * @author chenwei
 * @version 1.0
 * @since v1.0
 */
@Getter
@AllArgsConstructor
public enum EnumRpcResult implements IEnum {
    /** 成功 */
    SUCCESS("000000", "成功"),
    /** 超时异常 */
    TIMEOUT_ERR("999998", "超时异常"),
    /** 失败 */
    FAIL("999999", "其他通讯异常");

    /** 编码 */
    private String code;
    /** 描述 */
    private String description;

    /**
     * 根据code查找
     *
     * @param code code
     * @return 枚举
     */
    public static EnumRpcResult find(String code) {
        return Arrays.stream(EnumRpcResult.values()).filter(input -> input.getCode().equals(code)).findFirst().orElse(
            null);
    }
}
